package com.lyf.emall.service;

import com.lyf.emall.bean.Page;
import com.lyf.emall.bean.ResponseResult;
import com.lyf.emall.bean.SysRole;

/**
 * @Description:
 * @Author Lfy
 * @Date 2022/4/8-11:09
 */
public interface RoleService {

    /**
     * 获得角色的信息
     * @return
     */
    ResponseResult getAllRoleInfo(Page page);

    /**
     * 获取与管理员相关的角色
     * @return
     */
    ResponseResult getAllRoleByAdmin();

    /**
     * 添加角色及其权限
     * @param role
     * @param authorityId
     * @return
     */
    ResponseResult addRole(SysRole role, Integer[] authorityId);

    /**
     * 修改角色状态
     * @param roleId
     * @param status
     * @return
     */
    ResponseResult updateRoleStatus(Integer roleId, Integer status);

    /**
     * 修改角色信息
     * @param role
     * @param authorityId
     * @return
     */
    ResponseResult updateRoleInfo(SysRole role, Integer[] authorityId);

    /**
     * 判断角色名称是否重名
     * @param roleName
     * @return
     */
    ResponseResult isRoleByRoleName(String roleName);
}
